home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 3: Developer Tools / Linux Cubed Series 3 - Developer Tools.iso / devel / lang / lisp / gcl-1.000 / gcl-1 / gcl-1.0 / cmpnew / makefile < prev    next >
Encoding:
Makefile  |  1994-05-10  |  2.7 KB  |  121 lines

  1. .SUFFIXES: .o .c .lsp .lisp .fn
  2.  
  3.  
  4. PORTDIR    = ../unixport
  5. CAT=cat
  6.  
  7. OBJS    = cmpbind.o cmpblock.o cmpcall.o cmpcatch.o cmpenv.o cmpeval.o \
  8.     cmpflet.o cmpfun.o cmpif.o cmpinline.o cmplabel.o cmplam.o cmplet.o \
  9.     cmploc.o cmpmap.o cmpmulti.o cmpspecial.o cmptag.o cmptop.o \
  10.     cmptype.o cmputil.o cmpvar.o cmpvs.o cmpwt.o
  11.  
  12. COMPILE_FILE=$(PORTDIR)/saved_gcl $(PORTDIR) -system-p -no-o -compile
  13. CFLAGS    = -c -O -I../h
  14.  
  15. .lsp.c:
  16.     @ ../xbin/if-exists $(PORTDIR)/saved_gcl \
  17.     "rm -f $*.c $*.h $*.data $*.o" \
  18.     "$(COMPILE_FILE) $* "
  19.  
  20. .lsp.o:
  21.     @ ../xbin/if-exists $(PORTDIR)/saved_gcl \
  22.     "rm -f $*.c $*.h $*.data $*.o" \
  23.     "$(COMPILE_FILE) $* " \
  24.     "$(CC) $(OFLAG) $(CFLAGS) $*.c" \
  25.     "../xbin/append ${NULLFILE} $*.data $*.o"
  26.  
  27.  
  28. # begin makedefs
  29. GCLDIR=/d11/wfs/newakcl
  30. SHELL=/bin/sh
  31. MACHINE=sun4
  32.  
  33. LBINDIR=/usr/local/bin
  34. OFLAG    =  -O
  35. LIBS    = -lm 
  36.  
  37. #include "sparc.h"
  38.  
  39. # the commercial (for money) C compiler has never been able
  40. # to compile akcl/gcl correctly.  Perhaps it does not like the idea
  41. # that this is free software.   However the standard C compiler is ok.
  42.  
  43. CC = cc  -DVOL=  -I$(GCLDIR)/o -Bstatic -temp=. -pipe
  44. CC = cc  -DVOL=  -I$(GCLDIR)/o -Bstatic  -pipe
  45. ODIR_DEBUG=-O4
  46.  
  47. #gcc 2.1 and 2.2 compile gcl correctly as far as I have been able to determine.
  48. #gcc 2.3.3 does not compile gcl correctly
  49. # gcc 2.5.7 is correct as far as I can tell
  50. #CC = gcc -I${GCLDIR}/o -static -DVOL=volatile -W 
  51.  
  52. AS=as -P
  53.  
  54. CFLAGS    = -c $(DEFS)  -I../h
  55.  
  56. MAIN    = ../o/main.o
  57.  
  58. MPFILES=$(MPDIR)/mpi-sparc.o $(MPDIR)/sparcdivul3.o $(MPDIR)/libmport.a
  59. #MPFILES=${MPDIR}/mpi.o ${MPDIR}/libmport.a
  60.  
  61. RSYM    = rsym
  62. SFASL    = $(ODIR)/sfasl.o
  63.  
  64. # This function will be run before dumping.
  65. # When using SFASL it is good to have (si::build-symbol-table)
  66. INITFORM=(si::build-symbol-table)
  67.  
  68.  
  69.  
  70. # Use symbolic links
  71. SYMB=-s
  72. # the  make to use for saved_kcp the profiler.
  73. KCP=kcp-sun
  74.  
  75. NULLFILE = ../h/secondary_sun_magic
  76.  
  77. # end makedefs
  78.  
  79. all:    $(OBJS)
  80.  
  81. .lsp.fn: ../cmpnew/collectfn.o
  82.     ../xbin/make-fn $*.lsp
  83.  
  84.  
  85. .c.o:  
  86.     $(CC) $(OFLAG) $(CFLAGS) $*.c
  87.     $(CAT) ${NULLFILE} $*.data >> $*.o
  88.  
  89. collectfn.o:
  90.     $(PORTDIR)/saved_gcl $(PORTDIR)/ -compile $*
  91.  
  92. .lisp.o:
  93.     @ ../xbin/if-exists $(PORTDIR)/saved_gcl \
  94.     "$(PORTDIR)/saved_gcl $(PORTDIR)/ -compile $*.lisp " 
  95. sys-proclaim.lisp:
  96.     echo '(in-package "COMPILER")' \
  97.     '(load "../cmpnew/collectfn")(load "../lsp/sys-proclaim.lisp")'\
  98.     '(compiler::make-all-proclaims "*.fn")' | ../xbin/gcl
  99.  
  100.  
  101. newfn:    
  102.     make `echo $(OBJS) | sed -e 's:\.o:.fn:g'`
  103.  
  104.  
  105.  
  106. remake:
  107.     for v in `"ls" *.lsp.V | sed -e "s:\.lsp\.V::g"` ; \
  108.     do rm -f $$v.c $$v.h $$v.data $$v.lsp $$v.o ; \
  109.     ln -s  $(MAINDIR)/cmpnew/$$v.c . ; ln -s $(MAINDIR)/cmpnew/$$v.h . ; \
  110.     ln -s $(MAINDIR)/cmpnew/$$v.data . ; \
  111.     done
  112.     rm -f ../unixport/saved_gcl 
  113.     (cd .. ; make sources)
  114.     (cd .. ; make)
  115.     (cd .. ; make)
  116.  
  117. clean:
  118.     rm -f *.o core a.out
  119. allclean:
  120.     rm -f *.h *.data *.c
  121.